Internet Protocol Television (IPTV) services refer to a general term of services which provide television program broadcast, video on demand, time-shift playing, and other various application services and support interaction capacities to users through an Internet Protocol (IP) bearer network. An IPTV system at least comprises devices such as a server, a network, a set-top box, a television etc., and when the IPTV system is in use, the server transmits multimedia data to the set-top box over the network, and set-top box decodes the data and outputs the decoded data to the television for playing.
Applications such as video on demand, time-shift playing etc. in the IPTV services need to use a technology of retrieving an I frame, to facilitate users to perform operations such as positioning playing, fast forward and backward etc. For example, in the positioning playing, it is needed to skip to an I frame closest to a positioning time point for playing. Because data before the I frame cannot be correctly decoded, if the data are transmitted to the decoder, it is not only a waste of bandwidth and time, but also the data cannot be decoded. Therefore, how to quickly and accurately position the closest I frame is critical. For another example, in the fast forward and backward, due to limitation of the network bandwidth, in order to quickly respond to the fast forward and backward operation of users, all the data transmitted by the server to the set-top box are I frame data, and therefore, when providing the fast forward and backward function, the server needs to accurately know a specific location of the I frame in advance.
In summary, for various service applications, regardless of the server or the set-top box, the I frame needs to be retrieved quickly and the location of the I frame needs to be positioned accurately and timely in a certain application scene. At present, a video compression algorithm used in the IPTV services is typically the H.264 protocol, and a mode of a Transport Stream (TS) is used for packaging. When the I frame is retrieved from the TS stream, it is needed to analyze the syntax of the TS stream, i.e., analyzing the syntax of the H.264 in code streams, to determine initial and end locations of the I-frame. When bit streams of the H.264 protocol are analyzed, it is needed at least to parse semantics of a Sequence Parameter Set (SPS), a Picture Parameter Set (PPS) and a slice, and therefore, a certain memory space and CPU resources need to be consumed, and additional consumption will also be added in time, which will influence the speed to position the I frame.